<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>com.tek42.perforce package</title>
<!--

  Copyright 2007 tek42, All Rights Reserved.
  
-->
</head>
<body>


<p>Provides objects for interacting with processes.  All of our 
	interaction with perforce happens through the command line client: p4.
</p>
<p>
This package provides methods for simplifying the interaction with system calls.  Additionally,
it abstracts this interaction so that other methods could be used.  For example, the perforce native
DLL for windows.
</p>
<p>
@{link ExecutorFactory} provides an interface for an object that is responsible for holding on to the
system environment passed to the child process.  It has a method to obtain a new child process wrapper.
</p>
<p>
@{link Executor} provides an interface that represents the basic functionality needed for working with
a child process.  This boils down to 4 methods:
<ul>
	<li>Execution - @{link Executor#exec}</li>
	<li>Reading from process - @{link Executor#getReader}</li>
	<li>Writing to process - @{link Executor#getWriter}</li>
	<li>Closing the process - @{link Executor#close}</li>
</ul>
Currently there is an executor implementation for command line interaction.  If the native libraries for
p4 where used, we would need a dll implementation.
</p>
</body>
</html>
